package org.jeecg.modules.system.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.common.system.base.entity.DelFlagBaseEntity;
import org.jeecgframework.poi.excel.annotation.Excel;

import java.io.Serializable;

/**
 * @Description: 系统编码规则生成
 * @Author: jeecg-boot
 * @Date:   2021-02-02
 * @Version: V1.0
 */
@Data
@TableName("sys_encoding_rules")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="sys_encoding_rules对象", description="系统编码规则生成")
public class EncodingRules extends DelFlagBaseEntity implements Serializable {
    private static final long serialVersionUID = 1L;
    
    /**模版编码*/
	@Excel(name = "模版编码", width = 15)
    @ApiModelProperty(value = "模版编码")
    private String code;
	
	/**是否是字典类型*/
	@Excel(name = "是否是字典类型", width = 15, dicCode = "yn")
	@Dict(dicCode = "yn")
    @ApiModelProperty(value = "是否是字典类型")
    private Integer izDict;
	/**字典编码*/
	@Excel(name = "字典编码", width = 15, dictTable = "sys_dict", dicText = "dict_name", dicCode = "dict_code")
	@Dict(dictTable = "sys_dict", dicText = "dict_name", dicCode = "dict_code")
    @ApiModelProperty(value = "字典编码")
    private String dictCode;
	/**字典对应的值*/
//	@Excel(name = "字典对应的值", width = 15, dicCode = "zcgl_contract_status")
	@Dict(dicCode = "zcgl_contract_status")
    @ApiModelProperty(value = "字典对应的值")
    private String dictItemValue;
	/**字典对应的名称*/
	@Excel(name = "字典对应的名称", width = 15)
    @ApiModelProperty(value = "字典对应的名称")
    private String dictItemText;
	/**类型：1、自动编码*/
	@Excel(name = "类型：1、自动编码", width = 15, dicCode = "encoding_type")
	@Dict(dicCode = "encoding_type")
    @ApiModelProperty(value = "类型：1、自动编码")
    private Integer type;
	/**前缀1*/
	@Excel(name = "前缀1", width = 15)
    @ApiModelProperty(value = "前缀1")
    private String prefix1;
	/**前缀1格式：0、自定义，1、年月日，2、年月，3、年，4、英文小写，5、英文大写，6、数字*/
	@Excel(name = "前缀1格式", width = 15, dicCode = "encoding_rules_type")
	@Dict(dicCode = "encoding_rules_type")
    @ApiModelProperty(value = "前缀1格式")
    private Integer prefix1Type;
	/**前缀1长度*/
	@Excel(name = "前缀1长度", width = 15)
    @ApiModelProperty(value = "前缀1长度")
    private Integer prefix1Length;
	/**前缀2*/
	@Excel(name = "前缀2", width = 15)
    @ApiModelProperty(value = "前缀2")
    private String prefix2;
	/**前缀2格式：0、自定义，1、年月日，2、年月，3、年，4、英文小写，5、英文大写，6、数字*/
	@Excel(name = "前缀2格式", width = 15, dicCode = "encoding_rules_type")
	@Dict(dicCode = "encoding_rules_type")
    @ApiModelProperty(value = "前缀2格式")
    private Integer prefix2Type;
	/**前缀2长度*/
	@Excel(name = "前缀2长度", width = 15)
    @ApiModelProperty(value = "前缀2长度")
    private Integer prefix2Length;
	/**前缀3*/
	@Excel(name = "前缀3", width = 15)
    @ApiModelProperty(value = "前缀3")
    private String prefix3;
	/**前缀3格式：0、自定义，1、年月日，2、年月，3、年，4、英文小写，5、英文大写，6、数字*/
	@Excel(name = "前缀3格式", width = 15, dicCode = "encoding_rules_type")
	@Dict(dicCode = "encoding_rules_type")
    @ApiModelProperty(value = "前缀3格式")
    private Integer prefix3Type;
	/**前缀3长度*/
	@Excel(name = "前缀3长度", width = 15)
    @ApiModelProperty(value = "前缀3长度")
    private Integer prefix3Length;
	/**后缀1*/
	@Excel(name = "后缀1", width = 15)
    @ApiModelProperty(value = "后缀1")
    private String suffix1;
	/**后缀1格式：0、自定义，1、年月日，2、年月，3、年，4、英文小写，5、英文大写，6、数字*/
	@Excel(name = "后缀1格式", width = 15, dicCode = "encoding_rules_type")
	@Dict(dicCode = "encoding_rules_type")
    @ApiModelProperty(value = "后缀1格式")
    private Integer suffix1Type;
	/**后缀1长度*/
	@Excel(name = "后缀1长度", width = 15)
    @ApiModelProperty(value = "后缀1长度")
    private Integer suffix1Length;
	/**后缀2*/
	@Excel(name = "后缀2", width = 15)
    @ApiModelProperty(value = "后缀2")
    private String suffix2;
	/**后缀2格式：0、自定义，1、年月日，2、年月，3、年，4、英文小写，5、英文大写，6、数字*/
	@Excel(name = "后缀2格式", width = 15, dicCode = "encoding_rules_type")
	@Dict(dicCode = "encoding_rules_type")
    @ApiModelProperty(value = "后缀2格式")
    private Integer suffix2Type;
	/**后缀2长度*/
	@Excel(name = "后缀2长度", width = 15)
    @ApiModelProperty(value = "后缀2长度")
    private Integer suffix2Length;
	/**后缀3*/
	@Excel(name = "后缀3", width = 15)
    @ApiModelProperty(value = "后缀3")
    private String suffix3;
	/**后缀3格式：0、自定义，1、年月日，2、年月，3、年，4、英文小写，5、英文大写，6、数字*/
	@Excel(name = "后缀3格式", width = 15, dicCode = "encoding_rules_type")
	@Dict(dicCode = "encoding_rules_type")
    @ApiModelProperty(value = "后缀3格式")
    private Integer suffix3Type;
	/**后缀3长度*/
	@Excel(name = "后缀3长度", width = 15)
    @ApiModelProperty(value = "后缀3长度")
    private Integer suffix3Length;
	/**编码预览*/
	@Excel(name = "编码预览", width = 15)
    @ApiModelProperty(value = "编码预览")
    private String coding;
	/**当前值*/
	@Excel(name = "当前值", width = 15)
    @ApiModelProperty(value = "当前值")
    private String codingNow;
}
